home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Almathera Ten Pack 3: CDPD 3
/
Almathera Ten on Ten - Disc 3: CDPD3.iso
/
scope
/
026-050
/
scopedisk35
/
ss
/
sss.doc
< prev
next >
Wrap
Text File
|
1995-03-18
|
21KB
|
448 lines
SSS
-
S
creen
S
aving
S
ystem release
1.0 ©
1988
Roundabout Software
----------------------------------------------------------------------------
Thought you had seen the end of screen save utilities on Amiga? Not by
a long shot. Introducing three programs designed to help you get an IFF
picture out of almost anything that can be on your screen. This archive
contains the following :
GrabViews 16552 (one shot screen save program )
GrabViews.info 779 (icon for the above )
TimeSave 21284 (timed screen save program )
TimeSave.info 1227 (icon for the above )
Memview2 33208 (scan memory for bitmaps )
Memview2.info 1283 (icon for the above )
REGISTER.DOC 2377 (the part you dont want to read )
SSS.DOC 20831 (what you're gazing at now )
This is after the execute.me file has been executed.
Accept NO substitutions.
Preface
-------
SSS was written to try to address some of the inadequacies of the many
screen grab and snapshot programs currently available. For the technically
oriented, all three programs work by starting in GfxBase and working their
way through the list of active ViewPorts. A display does NOT need to be on
an Intuition screen for the SSS programs to find it. Other screenshot
programs that look for screens instead of ViewPorts are likely to not work
properly if a program is directly manipulating the display as described
in the RKM 'Graphics Primitives' chapter.
Format of these documents
-------------------------
The documents that follow are for the three programs that make up SSS,
GrabViews, TimeSave, and Memview2. The programs are designed to each be
in ascending order as to how hard it might possibly be to get at a screen.
For example, if you have control of your computer while a program is
running that you need a screenshot of, GrabViews will do the trick. If you
can't do anything while the program is running, not even a hotkey, then
TimeSave will save screens without your having to press a single key. If
TimeSave will not work with the program you are trying to get a snapshot
with (a desperate case indeed) then Memview2 is your last resort. Enough
of the preface, onward to the instructions for each of these programs...
GrabViews 1.0
----------------------------------------------------------------------------
GrabViews is the most basic form of these utilities. When run, the
program will save all currently active displays with incremental file
names. Operation is fairly simple, but the interface is different depending
on whether you start from Workbench or CLI.
Performance notes - CLI
-----------------------
GrabViews runs from CLI with a single argument, the prefix for the
filename(s) that the IFF's will be saved with. Since there can be many
displays active at any given time, files are numbered incrementally in
the following fashion :
<prefix>.VPXX
The prefix is what you supply on the command line. The VP stands
for ViewPort, and the XX will be a number, starting at 0. GrabViews
does not check for files of the same name already existing, so use
with care if you already have any similarly-named files in the same
directory. If GrabViews cannot open a file with the name you requested,
it will abort gracefully.
Example usage would be:
1> GrabViews Picture
Assuming you have two displays active (say the Workbench screen and a
terminal program) you would have the following files written:
Picture.VP00
Picture.VP01
These would go to the current directory. If you wanted to send them
to another directory, just add the path to the prefix on the command
line, for example:
1> GrabViews dh0:graphics/pictures/hello
Would result in hello.VP00 and hello.VP01 being written to the
directory 'dh0:graphics/pictures'.
Starting GrabViews from the CLI with no arguments will result in usage
information being displayed just to remind you what is going on.
Performance notes - Workbench
-----------------------------
Running from WorkBench is easy, just click on the icon. A small
window will open up and present some information and a prompt for you
to enter the prefix to be used on the filenames. After you have done
this, if your information is valid, GrabViews will start saving the
displays one at a time, displaying each filename as it is written. After
everything is finished, you will be asked to press a key to terminate
GrabViews. To write to a particular directory, just tack on the
directory name in front of the prefix as described in the CLI usage
section.
Please note that display of filenames as they are saved ONLY occurs if
you run the program from Workbench.
Mis-Features
------------
Currently there is NO support for funny video modes such as HAM or
ExtraHalfBright. If you do happen to have screens of this nature up when
you run GrabViews, it won't crash; rather, it will just output an IFF file
that probably can't be shown by any type of picture viewer. On the
upside, non-standard screen sizes should be saved perfectly.
If you happen to have more than 100 ViewPorts active when you run
GrabViews, the numbers will 'wrap around' and start saving again when it
gets to 100, writing over the VP00 files and so on. I seriously doubt
that anyone will have a problem with this, but I thought I would add it
in. If YOU can figure out how to get over 100 ViewPorts active at once,
then I will gladly modify the code to go up to 999.
TimeSave 1.0
---------------------------------------------------------------------------
TimeSave was written to handle those times when the program you are trying
to get a screen from won't let your hotkeys get through, or does something
strange when you switch back to CLI (if it will even LET you get back to
CLI). It was also written to allow unoprompted and scheduled saves of
the active displays. The basic operation of the program is similar to
that of GrabViews, but with a few more options. Read onward.
Performance notes - CLI
-----------------------
TimeSave expects two arguments on the command line, the start delay and
the save delay. Start delay refers to the amount of time in seconds that
TimeSave is to wait before beginning incremental saving of displays. The
save delay is the amount of time in seconds to wait between saving all the
available displays on the system. For example, if you were to start
TimeSave in this manner:
1> TimeSave 180 60
Then TimeSave would wait three minutes (180 seconds) before going to
work. Then it would save all the displays once a minute. Starting
TimeSave with no arguments, an improper number of arguments, or the
wrong type of arguments (ie. TimeSave hello world) will result in the
usage information being repeated to make sure, again, that you know
what you are doing. Usage after this point is described in the
'general usage' section following Workbench startup.
Performance notes - Workbench
-----------------------------
To start TimeSave from Workbench, just click on the icon. A small window
will open up prompting you for the start delay time and the save delay
time, as detailed above. If you enter the wrong usage information, then
TimeSave will abort, assuming that you really didn't want to run it. If
your options have been entered correctly, the small window will close up
and operations go on to what is described below.
Performance notes - General Usage
---------------------------------
After you have started TimeSave in your preferred manner, a small
window with a close gadget will pop up letting you know that TimeSave
is working. If you want to quit TimeSave, just click on the close gadget.
After the initial delay that was entered, TimeSave will save all the current
ViewPorts (displays) on the system to the logical device GRAB:. I used
this name so that Grabbit users won't have to reassign anything to use
this program. The filename is in the following format:
TimeSave.VPXX.YYY
The XXX refers to the the ViewPort number (starting at zero) and the
YYY number refers to the number of the save procedure that the pictures
came from. After the picture has been saved the WorkBench screen will
flash, letting you know that the picture has been written.
Here is a typical sequence of events in using TimeSave:
1> Assign GRAB: DF1:
( this assigns the logical device GRAB: which is where TimeSave
will try to save its files to )
1> run TimeSave 30 120
( This starts TimeSave with an initial delay of 30 seconds and
a 2 minute delay between saving sets of screens. )
Now, assuming you have two active displays, after 30 seconds the
following files will be written:
DF1:TimeSave.VP00.000
DF1:TimeSave.VP01.000
The Workbench screen will flash, letting you know that the files
have been written.
Then two minutes will pass. Suppose during that time you open
up ANOTHER screen. Here is what will be written:
DF1:TimeSave.VP00.001
DF1:TimeSave.VP01.001
DF1:TimeSave.VP02.001
Again, the Workbench screen will flash.
Then you click on the close gadget and TimeSave goes away. After
this TimeSave session you have the following files:
DF1:TimeSave.VP00.000
DF1:TimeSave.VP01.000
DF1:TimeSave.VP00.001
DF1:TimeSave.VP01.001
DF1:TimeSave.VP02.001
During the time that TimeSave is running, if anything goes wrong (TimeSave
can't save the files, for instance) it will abort gracefully. One other
thing you should know about is that TimeSave sets itself to a VERY high
priority to try to keep things from moving while it is saving the files.
Don't worry, while it is waiting for the time intervals, it won't slow
anything down at all, just when it is saving the screens. If there is too
much movement going on when the screen is being saved, there is a good
chance that you will get a little bit of blur, but this doesn't happen
very often.
Mis-Features
------------
As with GrabViews, TimeSave won't handle funny video modes such as
HAM and ExtraHalfBright. Also, certain game screens do not come out
quite right. The pixels will all be in the right places, but the colors
come out funny every now and then. In such a case, just be glad that
you at least have the meat of the picture (the bitmap) and boot up
a paint program and play with the palette until it looks right.
MemView 2.0
--------------------------------------------------------------------------
MemView 2.0 is based on a program written a couple of years ago by Leo
Schwab. It is designed as your last resort -- for those games that don't
start from Workbench conditions (Psygnosis products come to mind) and for
times when the displays may be hidden in memory but not actually showing
on the screen (see the hints and tips section for examples of this).
Basically what it lets you do is scan through chip memory looking for
bitmaps and then (if you choose) saves the image as an IFF file when you
exit the program.
Performance notes - Workbench & CLI
-----------------------------------
To start from Workbench, just click on the icon. To start from CLI, just
run the program. Execution after this is identical in either case.
Performance notes - General Usage
---------------------------------
After you have started Memview2, a window will pop up with many gadgets
in it. Nine of these are switches, and when you click on one of them,
it will slide to the right, and the previously selected one will turn
off. The four gadgets on the top row are the screen resolution at which
you wish to work. The five gadgets underneath those are the depth
settings, 1 = 2 colors, 2 = 4 colors, 3 = 8 colors, 4 = 16 colors,
and 5 = 32 colors. Note that you cannot have a depth of more than
4 with 640x400 and 640x200 modes. Even though you cannot select things
like this, I thought I would mention it.
Below the five depth gadgets is a string gadget. The name in here is
the filename to save the resulting picture to. If you just want to look
through memory and don't want to save a filename, then delete the default
string contained in the box by pressing Right-Amiga-X (or lots of
backspaces if you are more comfortable with that).
The last two gadgets are 'GO' and 'Cancel'. 'GO' will proceed with
program operation, and 'Cancel' will take you back to wherever you
started from (Workbench or CLI).
After you click on 'GO' then a display matching the resolution and
depth that you specified will be created. Control from this point is
joystick oriented (just like in the original Memview program), and kind
of fun if I might say so. You have five options available to you:
Joystick left : Select slow scroll mode
Joystick right: Select fast (zooom) scroll mode
Joystick up : Scroll upward through memory
Joystick down : Scroll downward through memory
Joy Button : Exit the program
Your task now is to find the bitmaps that you are looking for, which
hopefully match your specifications when you started the program. You
want to start by scrolling DOWNWARD until you find what you are looking
for. Chances are that you will find four or five different 'versions' of
the screen you are looking for, all but one with a good bit of miscellaneous
garbage on them. I like to check things out in high speed zooom mode
and then when I find it, I use the slow scroll mode to get the picture
lined up correctly. There is also a good chance that your picture will be
split across the border, as if somebody shifted the entire thing over and
it wrapped around to the other side. In this case, save it anyway and use
a paint program to move things around correctly. You will have to use
a paint program anyway to get the palette right -- Memview 2.0 uses a
fixed palette and searching through memory for a palette could take
hours, although I might do something like this for a future release.
A typical session with Memview 2.0 might go something like this:
Boot up that Psygnosis game that you want a screen from.
When the screen shows what you want a picture of, RESET your
computer. Yes, thats right, control-A-A (or the chickenhead
if you don't have a 1000)
Boot up with your workbench, or perhaps even a blank disk with
nothing but Memview 2.0 on it, and run Memview 2.0.
Select 320x200 resolution and a depth of 5, a filename of
PSYG.PIC.
Scroll DOWNWARD through memory using zooom mode until you
find the screen that was displayed when you reset the computer.
Yup, its still in there, and if you don't use much memory, it
can hang around for DAYS.
Since this is a five bitplane screen, usually the picture will
be the fifth one once you start seeing versions of it with a little
bit of garbage on 'em.
Use the fine scroll mode to center the picture, and press the
joystick button. Your picture will be written out.
Load up your favorite paint program (Graphicraft! hahahaha) and
adjust the palette until you are happy with it. The end.
Thats all there is to it. There are also some other neat things that
Memview 2.0 can accomplish that are detailed in the 'Hints & Tips' section.
Mis-Features
------------
You've probably already guessed -- at the current time, Memview 2.0 only
works in the above stated resolutions. No weird screen modes, and no
overscan or strange screen sizes. Maybe in a future release if I can
figure out how to implement it in my original requester.
If you are using either 320x400 or 640x400 resolution with more than
three bitplanes, the scroll is not exactly smooth, but jumpy. Don't worry,
though, everything straightens out when you let go of the stick, and
everything will be saved properly. Not my fault, just that the
ScrollVPort routine isn't quite perfect. I've done what I can to keep
things looking reasonably pretty.
You should NOT scroll UPWARDS through memory if you intend on saving the
picture, or else your IFF won't match what was on the screen when you save
it. Always start your journey into memory by scrolling DOWNWARD. I'll
be fixing this soon, but I wanted to go ahead and get this entire package
out and in 'distribution' fairly quick. No, you won't crash or anything,
its just that the result is not correct.
SSS Hints and Tips
---------------------------------------------------------------------------
Okay, here are some fun things you can do with SSS that you might not
have been able to think of while wading through these monotonous
instructions.
1) Cheat at Centerfold Squares. Apparently CFS keeps a duplicate of your
opponent in memory as she is seen when you win. The sequence of events to
get the picture is:
a) boot CFS and get a screen with the partially obscured opponent
b) run Memview 2.0 at 320x200 resolution and a depth of 5. Scroll
through until you find the right picture, with the weird colors and
all. Save the result.
c) Get a copy of the REAL CFS screen with GrabVeiws. Put these in
the same directory.
d) Quit CFS unless you have lots of memory. Boot up a paint program
and load in the Memview 2.0 picture. Then swap screens and load in
the GrabViews picture. Now your palette should be correct. Swap
back and view your handiwork and feel kind of guilty.
2) You can get pictures from all those neat Psygnosis games that have
custom bootblocks and don't let you do diddley while they are running.
3) You can save a picture of a running program WITH THE MENU DOWN. Yes,
I know it sounds hard to believe, but it works. First, run TimeSave.
Then get yourself situated for the save by pulling down the menu. Wait
for the flash (if you are on Workbench doing this, if not just kind of
time yourself or wait for the disk to stop spinning) and then check your
work to see if it came out okay. I've done this several times with no
problem, and is going to be a big help when doing A.X. reviews in the
future.
4) What else? I'm not sure. If you find anything else fun to do with
SSS then please get in touch with me and let me know.
Distribution
------------
And now for the part that you probably didn't want to read.
This package may be distributed via BBS's anywhere, or included on
any software collection provided that the charge for said software
collection or PD disk does not exceed that of the media and/or shipping
charges. Posting to major networks is allowed (and encouraged) except
for Compuserve. I have no desire to belong to their libraries, and if
you find this there, please ask the sysops to delete it by request of
the author.
If you do choose to distribute this in ANY manner, you MUST include
every program that is in the original ARC file. A list of all the
files occurs at the beginning of these documents.
Please note that this program and the entire SSS system is released
as freely distributable Shareware, which means that you can test drive
it and see how you like it, after which time you make the decision to
buy or die (grin). If you can't afford the contribution, don't worry
yourself to sleep, I've been in the same shape myself before. Future
additions and upgrades (for example, a hotkey activated utility like the
ones above) to SSS depend on the support from the users, however. See
REGISTER.DOC for your shareware registration info.
On the other hand, if you are using this package in any kind of
commercial environment (one idea that comes to mind is screenshots for
magazines) then the contribution is MANDATORY. The price I am asking
is not unreasonable for people in those situations. For your registration
form and registration information, please consult the REGISTER.DOC file
that is contained in this arc file.
Finding the author
------------------
If you enjoy this program, then why not give my BBS a call? I may
be located at the following locations:
Chris Bailey (VOICE) (803) 796-8058 or
(VOICE) (803) 794-4933
My BBS (803) 791-9448
bix : csbailey
U.S. Snail 2405 Feather Run Trail
W. Columbia, SC
29169
And at various other BBS's across the country (thank you, PC-Pursuit).
----------------------------------------------------------------------
This product was written and developed with:
Benchmark Modula-2
by
Avant Garde Software
----------------------------------------------------------------------
Revision History
----------------
Version 1.0 : Initial release consisting of:
Memview 2.0
GrabViews 1.0
TimeSave 1.0